package com.tgy.递归;

/***
 * @ClassName: RecursionTest
 * @Description: 实验递归
 * @Auther: tanggy3
 * @Date: 10:13 2022/8/2
 * @version : V1.0
 */
public class RecursionTest {
    public static void main(String[] args) {
        //System.out.println(factorial(3L));
        //System.out.println(fb(7));
        test(4);
    }


    //打印问题.
    public static void test(int n) {
        if (n > 2) {
            test(n - 1);
        } //else {
        System.out.println("n=" + n);
        // }
    }

    /**
     * 阶乘
     * @param l
     * @return
     */
    public static Long factorial(Long l) {
        Long sum = 1L;
        if (l > 1) {
            sum = l * factorial(--l);
        }
        return sum;
    }

    /**
     * 斐波那契数列
     * @param l 第几位数
     * @return
     */
    public static Long fb(int l) {
        Long sum = 1L;
        if(l >2 ){
            sum = fb(--l)+fb(--l);
        }
        return sum;
    }
}
